package game;

import javax.swing.JOptionPane;

//konstruerer underklassen Ownable af klassen Field og deklarerer 2 variabler.
public class Ownable extends Field{
	private int price;
	private Player owner;
	
	//Metoden getRent
	public int getRent(){
		return 0;
	}
	
	//set-metode for int-prisen af Ownable
	public void setPrice(int price)
	{
		this.price = price;
	}
	
	//get-metode for ejeren af feltet
	public Player getOwner()
	{
		return owner;
	}
	
	//set-metode for et felt. Spiller sættes lig variablen owner.
	public void setOwner(Player player)
	{
		owner = player;
	}
	
	//Hvis en player lander på et Field af Ownable-typen
	public void landOnField(Player player){
		
		//Hvis der er ingen ejer af feltet	
		if(owner==null){
				
			//Hvis spilleren har penge nok, kan han vælge at købe feltet
			if(player.getAccount().getPoint()>=price){
				
				int valg = JOptionPane.showConfirmDialog(null, "Vil du købe denne grund:\n" + getName() + " for " + price + "?", "Køb grund ...", JOptionPane.YES_NO_OPTION);;//Valg==0 er ja
				
				//hvis spilleren vælger at købe feltet, trækkes prisen fra hans konto
				if (valg==0) {
					owner = player;
					player.getAccount().addPoints(-price);
					
				}
			}
		}
		//hvis feltet ejes af en anden spiller, kaldes getRent fra Fleet, så man betaler til ejeren af fetet
		else if(owner!=player){
			getRent();
			player.getAccount().addPoints(-getRent());
			owner.getAccount().addPoints(getRent());
		}
		
	}	
}
